﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x020004AF RID: 1199
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class EquipmentProperty : IMessage<EquipmentProperty>, IMessage, IEquatable<EquipmentProperty>, IDeepCloneable<EquipmentProperty>, IBufferMessage
	{
		// Token: 0x17000F72 RID: 3954
		// (get) Token: 0x06003606 RID: 13830 RVA: 0x00094905 File Offset: 0x00092B05
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<EquipmentProperty> Parser
		{
			get
			{
				return EquipmentProperty._parser;
			}
		}

		// Token: 0x17000F73 RID: 3955
		// (get) Token: 0x06003607 RID: 13831 RVA: 0x0009490C File Offset: 0x00092B0C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return EquipmentPropertyReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17000F74 RID: 3956
		// (get) Token: 0x06003608 RID: 13832 RVA: 0x0009491E File Offset: 0x00092B1E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return EquipmentProperty.Descriptor;
			}
		}

		// Token: 0x06003609 RID: 13833 RVA: 0x00094925 File Offset: 0x00092B25
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public EquipmentProperty()
		{
		}

		// Token: 0x0600360A RID: 13834 RVA: 0x00094930 File Offset: 0x00092B30
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public EquipmentProperty(EquipmentProperty other) : this()
		{
			this.id_ = other.id_;
			this.rank_ = other.rank_;
			this.promotion_ = other.promotion_;
			this.level_ = other.level_;
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600360B RID: 13835 RVA: 0x00094984 File Offset: 0x00092B84
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public EquipmentProperty Clone()
		{
			return new EquipmentProperty(this);
		}

		// Token: 0x17000F75 RID: 3957
		// (get) Token: 0x0600360C RID: 13836 RVA: 0x0009498C File Offset: 0x00092B8C
		// (set) Token: 0x0600360D RID: 13837 RVA: 0x00094994 File Offset: 0x00092B94
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint Id
		{
			get
			{
				return this.id_;
			}
			set
			{
				this.id_ = value;
			}
		}

		// Token: 0x17000F76 RID: 3958
		// (get) Token: 0x0600360E RID: 13838 RVA: 0x0009499D File Offset: 0x00092B9D
		// (set) Token: 0x0600360F RID: 13839 RVA: 0x000949A5 File Offset: 0x00092BA5
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint Rank
		{
			get
			{
				return this.rank_;
			}
			set
			{
				this.rank_ = value;
			}
		}

		// Token: 0x17000F77 RID: 3959
		// (get) Token: 0x06003610 RID: 13840 RVA: 0x000949AE File Offset: 0x00092BAE
		// (set) Token: 0x06003611 RID: 13841 RVA: 0x000949B6 File Offset: 0x00092BB6
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint Promotion
		{
			get
			{
				return this.promotion_;
			}
			set
			{
				this.promotion_ = value;
			}
		}

		// Token: 0x17000F78 RID: 3960
		// (get) Token: 0x06003612 RID: 13842 RVA: 0x000949BF File Offset: 0x00092BBF
		// (set) Token: 0x06003613 RID: 13843 RVA: 0x000949C7 File Offset: 0x00092BC7
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint Level
		{
			get
			{
				return this.level_;
			}
			set
			{
				this.level_ = value;
			}
		}

		// Token: 0x06003614 RID: 13844 RVA: 0x000949D0 File Offset: 0x00092BD0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as EquipmentProperty);
		}

		// Token: 0x06003615 RID: 13845 RVA: 0x000949E0 File Offset: 0x00092BE0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(EquipmentProperty other)
		{
			return other != null && (other == this || (this.Id == other.Id && this.Rank == other.Rank && this.Promotion == other.Promotion && this.Level == other.Level && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x06003616 RID: 13846 RVA: 0x00094A4C File Offset: 0x00092C4C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.Id != 0U)
			{
				num ^= this.Id.GetHashCode();
			}
			if (this.Rank != 0U)
			{
				num ^= this.Rank.GetHashCode();
			}
			if (this.Promotion != 0U)
			{
				num ^= this.Promotion.GetHashCode();
			}
			if (this.Level != 0U)
			{
				num ^= this.Level.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x06003617 RID: 13847 RVA: 0x00094AD6 File Offset: 0x00092CD6
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x06003618 RID: 13848 RVA: 0x00094ADE File Offset: 0x00092CDE
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x06003619 RID: 13849 RVA: 0x00094AE8 File Offset: 0x00092CE8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.Id != 0U)
			{
				output.WriteRawTag(8);
				output.WriteUInt32(this.Id);
			}
			if (this.Rank != 0U)
			{
				output.WriteRawTag(16);
				output.WriteUInt32(this.Rank);
			}
			if (this.Promotion != 0U)
			{
				output.WriteRawTag(24);
				output.WriteUInt32(this.Promotion);
			}
			if (this.Level != 0U)
			{
				output.WriteRawTag(32);
				output.WriteUInt32(this.Level);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600361A RID: 13850 RVA: 0x00094B78 File Offset: 0x00092D78
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.Id != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.Id);
			}
			if (this.Rank != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.Rank);
			}
			if (this.Promotion != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.Promotion);
			}
			if (this.Level != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.Level);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600361B RID: 13851 RVA: 0x00094C00 File Offset: 0x00092E00
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(EquipmentProperty other)
		{
			if (other == null)
			{
				return;
			}
			if (other.Id != 0U)
			{
				this.Id = other.Id;
			}
			if (other.Rank != 0U)
			{
				this.Rank = other.Rank;
			}
			if (other.Promotion != 0U)
			{
				this.Promotion = other.Promotion;
			}
			if (other.Level != 0U)
			{
				this.Level = other.Level;
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600361C RID: 13852 RVA: 0x00094C78 File Offset: 0x00092E78
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600361D RID: 13853 RVA: 0x00094C84 File Offset: 0x00092E84
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num <= 16U)
				{
					if (num == 8U)
					{
						this.Id = input.ReadUInt32();
						continue;
					}
					if (num == 16U)
					{
						this.Rank = input.ReadUInt32();
						continue;
					}
				}
				else
				{
					if (num == 24U)
					{
						this.Promotion = input.ReadUInt32();
						continue;
					}
					if (num == 32U)
					{
						this.Level = input.ReadUInt32();
						continue;
					}
				}
				this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
			}
		}

		// Token: 0x04001533 RID: 5427
		private static readonly MessageParser<EquipmentProperty> _parser = new MessageParser<EquipmentProperty>(() => new EquipmentProperty());

		// Token: 0x04001534 RID: 5428
		private UnknownFieldSet _unknownFields;

		// Token: 0x04001535 RID: 5429
		public const int IdFieldNumber = 1;

		// Token: 0x04001536 RID: 5430
		private uint id_;

		// Token: 0x04001537 RID: 5431
		public const int RankFieldNumber = 2;

		// Token: 0x04001538 RID: 5432
		private uint rank_;

		// Token: 0x04001539 RID: 5433
		public const int PromotionFieldNumber = 3;

		// Token: 0x0400153A RID: 5434
		private uint promotion_;

		// Token: 0x0400153B RID: 5435
		public const int LevelFieldNumber = 4;

		// Token: 0x0400153C RID: 5436
		private uint level_;
	}
}
